Information processing apparatus, control method, and program

ABSTRACT

An information processing apparatus (2000) detects a stationary object from video data (12). In addition, the information processing apparatus (2000) executes person detection process of detecting a person in vicinity of an object (target object) detected as the stationary object for each of a plurality of video frames (14) which includes the target object. Furthermore, the information processing apparatus (2000) executes a predetermined process by comparing results of the person detection process for each of the plurality of video frames (14)

TECHNICAL FIELD

The present invention relates to an information processing apparatus, acontrol method, and a program.

BACKGROUND ART

A technology for analyzing an image captured by a surveillance camera todetect a suspicious object is being developed. For example, PatentDocument 1 and Patent Document 2 disclose technologies for detecting anobject whose state is continuously stationary as a suspicious leftobject, and presuming a person who left the object.

RELATED DOCUMENT Patent Document

[Patent Document 1] Japanese Patent Application Publication No.2011-049646

[Patent Document 2] Japanese Patent Application Publication No.2012-235300

SUMMARY OF THE INVENTION Technical Problem

In Patent Document 1 and Patent Document 2 described above, an objectbeing continuously stationary is detected as a left object. However, theobject being continuously stationary is not necessarily a left object.For example, there is a case where a customer waiting for a target planein the lobby of the airport keeps sitting on a chair in a state ofplacing luggage in their vicinity. In a case where the object beingcontinuously stationary is detected as a left object, this kind ofluggage is also falsely detected as a left object.

In addition, in Patent Document 1, there is disclosed a technology inwhich an object being in vicinity of a moving object is not detected asa left object, so that the object which is merely left on a side of themoving object is not detected as a suspicious object. However, in thismethod, if the owner of the luggage does not move, such as a case wherethe owner keeps sitting on the chair with the luggage that is put besidetheir feet as described above, the luggage is falsely detected as a leftobject.

The present invention is made in view of the above circumstances. Anobject of the present invention is to provide a technology foraccurately detecting a left object from a video.

Solution to Problem

An information processing apparatus of the present inventionincludes: 1) a stationary object detection unit that detects astationary object from video data; 2) a person detection unit thatexecutes person detection process of detecting a person in vicinity of atarget object for each of a first video frame and a second video frame,the target object being an object detected as the stationary object, thefirst video frame including the target object, the second video frameincluding the target object and being generated after the first videoframe; and 3) a process execution unit that executes a predeterminedprocess by comparing results of the person detection process for each ofthe first video frame and the second video frame.

A control method according to the present invention is executed by acomputer. The control method includes: 1) a stationary object detectionstep of detecting a stationary object from video data; 2) a persondetection step of executing person detection process of detecting aperson in vicinity of a target object for each of a first video frameand a second video frame, the target object being an object detected asthe stationary object, the first video frame including the targetobject, the second video frame including the target object and beinggenerated after the first video frame; and 3) a processing executionstep of executing a predetermined process by comparing results of theperson detection process for each of the first video frame and thesecond video frame.

A program according to the present invention causes the computer toexecute each step of the control method according to the presentinvention.

Advantageous Effects of Invention

According to the present invention, there is provided a technology foraccurately detecting a left object from a video.

BRIEF DESCRIPTION OF THE DRAWINGS

The above-described object, other objects, features, and advantages willbe further clear through preferable embodiments which will be describedbelow and accompanying drawings below.

FIG. 1 is a diagram illustrating an outline of an operation of aninformation processing apparatus according to a present embodiment.

FIG. 2 is a diagram illustrating a configuration of the informationprocessing apparatus according to a first embodiment.

FIG. 3 is a diagram illustrating a computer which is used to realize theinformation processing apparatus.

FIG. 4 is a flowchart illustrating a flow of a process executed by theinformation processing apparatus according to the first embodiment.

FIG. 5 is a diagram conceptually illustrating a method of detecting astationary object from video data.

FIG. 6 are diagrams illustrating a vicinity region defined as an imageregion of a part of a video frame.

FIG. 7 is a diagram illustrating a flow of processing of warningexecuted by a process execution unit.

FIG. 8 is a flowchart illustrating a flow of processing in which aprocess execution unit specifies a state of a target object.

FIG. 9 is a diagram conceptually illustrating how a tracked person isdetected from a plurality of cameras.

DESCRIPTION OF EMBODIMENTS

Hereinafter, embodiments of the present invention will be described withreference to the accompanying drawings. Also, in all drawings, the samesymbols are attached to the same components, and description isappropriately omitted. In addition, unless particular description isperformed, each block in each block diagram represents a configurationin function units instead of a configuration in hardware units.

First Embodiment

<Outline>

As a way detecting a left object, there is a way to detect a stationaryobject from a video data and handle the stationary object as a leftobject. In addition, as a way of detecting the stationary object, thereis a way to detect an object as a stationary object by detecting anobject from each video frame constituting the video data, and detect theobject as a stationary object when the object is stationary. Here, “theobject is stationary” means that a state where a change of the locationof the object is small (equal to or less than a predetermined threshold)is continuous. Therefore, the object is detected as a stationary objectin a case where a state where a change of the location of the object issmall continues.

However, as described above, a stationary object is not necessarily aleft object. Therefore, in order to accurately detect a left object, themethod of detecting the stationary object as the left object is notsufficient.

Accordingly, an information processing apparatus of the presentembodiment performs further processes when a stationary object isdetected from the video data. FIG. 1 is a diagram illustrating anoutline of an operation of an information processing apparatus(information processing apparatus 2000 described in FIG. 2) of thepresent embodiment. FIG. 1 is an example for ease of understanding aboutthe information processing apparatus 2000, and the operation of theinformation processing apparatus 2000 is not limited thereto.

The information processing apparatus 2000 detects the stationary objectfrom video data 12. Furthermore, the information processing apparatus2000 performs a process (hereinafter, person detection process) ofdetecting a person present in vicinity of the target object from aplurality of video frames 14 including the object (hereinafter, thetarget object) detected as the stationary object. Then, a predeterminedprocess is performed by comparing results of the person detectionprocess for each video frame 14. As described later, for example, thepredetermined process includes a process of warning executed in a casewhere the probability of that the target object is a left object ishigh, or a process of determining a state of the target object(determining whether the target object is being left).

For example, it is assumed that the target object detected as astationary object is not a left object but an object placed by theowner. In this case, a state of the owner being in the vicinity of thetarget object continues. On the other hand, in a case where the targetobject is a left object, the owner disappears from the vicinity of thetarget object. Therefore, in order to distinguish the cases, theinformation processing apparatus 2000 performs the person detectionprocess of detecting a person being in the vicinity of the target objectwith respect to the video frame 14 including the target object at eachdifferent time-point, and then the result is compared. In this way,comparing to the method of detecting a stationary object as a leftobject, it is possible to accurately detect a left object.

Hereinafter, the information processing apparatus 2000 of the embodimentwill be described in further detail.

<Example of Functional Configuration of Information Processing Apparatus2000>

FIG. 2 is a diagram illustrating the configuration of the informationprocessing apparatus 2000 according to the first embodiment. Theinformation processing apparatus 2000 includes a stationary objectdetection unit 2020, a person detection unit 2040, and a processexecution unit 2060. The stationary object detection unit 2020 detects astationary object from the video data 12. The person detection unit 2040executes person detection process of detecting a person in the vicinityof the target object for each of a plurality of video frames 14 whichincludes an object (target object) detected as the stationary object.The process execution unit 2060 executes the predetermined process bycomparing the results of the person detection process for each of theplurality of video frames.

<Hardware Configuration of Information Processing Apparatus 2000>

Respective functional configuration units of the information processingapparatus 2000 may be realized by hardware (for example, a hard-wiredelectronic circuit or the like) which realizes the respective functionalconfiguration units, or may be realized through a combination (forexample, a combination of an electronic circuit and a programcontrolling the electronic circuit, or the like) of hardware andsoftware. Hereinafter, a case where the respective functionalconfiguration units of the information processing apparatus 2000 arerealized through the combination of the hardware and the software willbe further described.

FIG. 3 is a diagram illustrating a computer 1000 which is used torealize the information processing apparatus 2000. The computer 1000 isan optional computer. For example, the computer 1000 includes a PersonalComputer (PC), a server machine, a tablet terminal, a smartphone, or thelike. The computer 1000 may be a dedicated computer which is designed torealize the information processing apparatus 2000, or a general-purposecomputer.

The computer 1000 includes a bus 1020, a processor 1040, a memory 1060,a storage device 1080, an input-output interface 1100, and a networkinterface 1120. The bus 1020 is a data transmission line which is usedfor the processor 1040, the memory 1060, the storage device 1080, theinput-output interface 1100, and the network interface 1120 to transmitand receive data to and from each other. However, a method forconnecting the processor 1040 and the like to each other is not limitedto bus connection. The processor 1040 is an arithmetic unit such as aCentral Processing Unit (CPU) or a Graphics Processing Unit (GPU). Thememory 1060 is a main memory unit which is realized using a RandomAccess Memory (RAM) or the like. The storage device 1080 is an auxiliarystorage unit which is realized using a hard disk, a Solid State Drive(SSD), a memory card, a Read Only Memory (ROM), or the like. However,the storage device 1080 may include hardware which is the same ashardware, such as the RAM, included in the main memory unit.

The input-output interface 1100 is an interface which is used to connectthe computer 1000 to an input-output device. The network interface 1120is an interface which is used to connect the computer 1000 to acommunication network. The communication network is, for example, aLocal Area Network (LAN) or a Wide Area Network (WAN). A method forconnecting to the communication network via the network interface 1120may be wireless connection or wired connection.

For example, the computer 1000 is communicably connected to a camera 10through the network. However, a method for communicably connecting thecomputer 1000 to the camera 10 is not limited to connection through thenetwork. In addition, the computer 1000 may not be communicablyconnected to the camera 10.

The storage device 1080 stores program modules which are used to realizethe respective functional configuration units (the stationary objectdetection unit 2020, the person detection unit 2040, and the processexecution unit 2060) of the information processing apparatus 2000. Theprocessor 1040 realizes functions corresponding to the respectiveprogram modules by reading and executing the respective program modulesin the memory 1060.

The computer 1000 may be realized using a plurality of computers. Forexample, the stationary object detection unit 2020, the person detectionunit 2040, and the process execution unit 2060 can be realized bydifferent computers. In this case, the program modules stored in thestorage device of each computer may be only the program modulescorresponding to the functional configuration units realized by thecomputer.

<Camera 10>

The camera 10 is an optional camera which can generate the video data 12by repeatedly performing imaging. For example, the camera 10 is asurveillance camera provided to monitor a specific facility or a road.

A part or all of the functions of the information processing apparatus2000 may be realized by the camera 10. That is, the camera 10 may beused as the computer 1000 for realizing the information processingapparatus 2000. In this case, the camera 10 processes the video data 12generated by itself. It is possible to use, for example, an intelligentcamera, a network camera, or a camera which is called an InternetProtocol (IP) camera, as the camera 10 which realizes the informationprocessing apparatus 2000.

<Flow of Process>

FIG. 4 is a flowchart illustrating a flow of processes executed by theinformation processing apparatus 2000 according to the first embodiment.The stationary object detection unit 2020 detects the stationary objectfrom the video data 12 (S102). The person detection unit 2040 executesthe person detection process of detecting a person in the vicinity ofthe target object for each of the plurality of video frames 14 whichincludes the target object (S104). The process execution unit 2060executes the predetermined process by comparing the results of theperson detection process for each of the plurality of video frames(S106).

<Method of Acquiring Video Data 12>

The information processing apparatus 2000 acquires video data 12 to beprocessed. There are various methods of acquiring the video data 12 bythe information processing apparatus 2000. For example, the informationprocessing apparatus 2000 receives the video data 12 transmitted fromthe camera 10. In another example, the information processing apparatus2000 accesses the camera 10 and acquires the video data 12 stored in thecamera 10.

Note that, the camera 10 may store the video data 12 in a storage unitprovided outside the camera 10. In this case, the information processingapparatus 2000 accesses the storage unit to acquire the video data 12.Therefore, in this case, the information processing apparatus 2000 andthe camera 10 may not be communicably connected.

In a case where a part or all of the functions of the informationprocessing apparatus 2000 is realized by the camera 10, the informationprocessing apparatus 2000 acquires the video data 12 which are generatedby the information processing apparatus 2000 itself. In this case, thevideo data 12 are stored in, for example, the storage unit (the storagedevice 1080) provided inside the information processing apparatus 2000.Therefore, the information processing apparatus 2000 acquires the videodata 12 from the storage units.

The timing at which the information processing apparatus 2000 acquiresthe video data 12 is arbitrary. For example, each time a new video frame14 constituting the video data 12 is generated by the camera 10, theinformation processing apparatus 2000 acquires the video data 12 byacquiring the newly generated video frame 14. In another example, theinformation processing apparatus 2000 may periodically acquireunacquired video frames 14. For example, in a case where the informationprocessing apparatus 2000 acquires the video frames 14 once a second,the information processing apparatus 2000 collectively acquires aplurality of video frames 14 (for example, in a case where a frame rateof the video data 12 is 30 frames/second (fps), the number of videoframes 14 is 30) generated per second.

The stationary object detection unit 2020 may acquire all the videoframes 14 constituting the video data 12 or may acquire only a part ofthe video frames 14. In the latter case, for example, the stationaryobject detection unit 2020 acquires the video frame 14 generated by thecamera 10 at a ratio of one frame per a predetermined number of frames.

<Detection of Stationary Object: S102>

The stationary object detection unit 2020 detects the stationary objectfrom the video data 12 (S102). A well-known technique may be used as atechnique for detecting the stationary object from the video data.Hereinafter, an example of a method of detecting a stationary objectfrom the video data 12 will be described.

The stationary object detection unit 2020 detects an object from eachvideo frame 14 constituting the video data 12. The stationary objectdetection unit 2020 computes the variation amount of the position of theobject for each of the plurality of video frames 14 which includes thesame object. The stationary object detection unit 2020 detects theobject as the stationary object if a state where the variation of theposition of the object is less than or equal to a predetermined amountcontinues for a predetermined period. Here, in a case where an object isdetected as the stationary object by the stationary object detectionunit 2020, the predetermined period during which the state where thevariation of the position of the object is less than or equal to apredetermined amount continues is referred to as a stationarydetermination period.

FIG. 5 is a diagram conceptually illustrating a method of detecting thestationary object from the video data 12. In this example, thestationary object detection unit 2020 detects the object as thestationary object in a case where the period during which the variationamount of the position of the object is equal to or less than thepredetermined value is more than or equal to p.

In the video data 12 illustrated in FIG. 5, an object 20 is detectedfrom each video frame 14 after the time-point t. The stationary objectdetection unit 2020 computes the variation amount of the position of theobject 20 by computing the difference in the positions of the object 20for each combination of two video frames 14 adjacent to each other intime series.

First, at the time-point t, a person 30 holding the object 20 appears.The person 30 is moving with the object 20 until the time-point t+a.Therefore, the variation amount of the position of the object 20computed for the period from the time-point t to time-point t+a has avalue larger than the predetermined amount. As a result, in thedetermination using the video frames 14 generated in the period, theobject 20 is not detected as the stationary object.

Then, after the time-point t+a, the object 20 is being placed on theground. Therefore, the variation amount of the position of the object 20detected from each video frame 14 after the time-point t+a is less thanor equal to the predetermined amount. Accordingly, the stationary objectdetection unit 2020 detects the object 20 as the stationary object onthe basis of the determination using the video frames 14 generated inthe period from the time-point t+a to the time-point t+a+p.

In another example, the stationary object detection unit 2020 maygenerate a background image (an image only comprising the background)using the video frame 14 and may detect the stationary object on thebasis of the background difference. First, the stationary objectdetection unit 2020 generates a background image from the video frame 14in the time-series. Various known techniques can be used to generate thebackground image. Next, the stationary object detection unit 2020computes the difference between a newly acquired video frame 14 and thebackground image. Then, the stationary object detection unit 2020extracts a region in which the difference is large. The stationaryobject detection unit 2020 executes the above described process eachtime that the video frame 14 is acquired, compares acquired extractionresults between the frames, and determines whether or not the variationamount of the position of the object is within the predetermined amount.

In the case of FIG. 5, it is assumed that the above described backgrounddifference is used. In this case, the variation amount of the positionof the object 20 computed for a period from the time-point t to thetime-point t+a has a value larger than the predetermined amount. On theother hand, after the time-point t+a, the variation amount of theposition of the object 20 is less than or equal to the predeterminedamount. Therefore, even in a case of using the background difference,the object 20 is detected as the stationary object on the basis of thedetermination using the video frames 14 that is generated in the periodfrom the time-point t+a to the time-point t+a+p.

A method of determining a movement of the object is not limited to theabove method. For example, various methods can be used such as a methodof “extracting feature points in an object and correlating featurepoints between adjacent frames to obtain a movement amount of theobject”.

<Person Detection Process: S104>

The person detection unit 2040 executes the person detection process ofdetecting the person in the vicinity of the target object for each ofthe plurality of video frames 14 which includes the target object (theobject detected as the stationary object) (S104). Hereinafter, in thevideo frame 14, an image region around the target object is referred toas a vicinity region. For example, in the example of FIG. 5 describedabove, “the plurality of video frames 14 which include the targetobjects” are respective video frames 14 generated after the time-pointt. The video frames 14 include the object 20 which is the objectdetected as the stationary object.

Here, a well-known technique (for example, feature matching, templatematching, and the like) can be used as a method of detecting a personfrom a video frame (that is, image data). For example, in a case ofusing the feature matching, the person detection unit 2040 detects aperson by detecting an image region from the video frame 14, the imageregion having a feature value that represents features of an appearanceof person.

Here, the person detection process may be a process of detecting animage region representing a person entirely, or may be a process ofdetecting an image region representing a part (for example, head) of aperson. Here, in a case where many people or objects are included in animaging range of the camera 10, there is a high probability that a partof the person is hidden by another person or object. In this case, thehead may be a part having a low probability of being hidden by anotherperson or the like (a part having a high probability of being imaged bythe camera 10) compared to the lower body and the like. In addition, thehead may be a part well representing the features of an individual.Therefore, there are advantages in performing the process of detectingthe head in the person detection process as follows: 1) the probabilitycapable of detecting the person from the video frame 14 is high; and 2)the person can be detected in a manner of being easily distinguishedfrom other people.

The vicinity region may be an image region corresponding to the entirevideo frame 14 or may be an image region corresponding to a part of thevideo frame 14. In a case where the image region corresponding to a partof the video frame 14 is handled as the vicinity region, for example, animage region having a predetermined shape based on the position of thetarget object is handled as the vicinity region. Here, arbitraryposition (for example, center position) included in the image regionrepresenting an object may be handled as the position of the object.Furthermore, the predetermined shape can be, for example, a circle or arectangle having a predetermined size. The vicinity region may or maynot include the target object. Information defining the predeterminedshape may be set in advance in the person detection unit 2040 or may bestored in a storage unit accessible from the person detection unit 2040.

FIG. 6 are diagrams illustrating a vicinity region defined as an imageregion of a part of a video frame 14. In FIG. 6, the target object is anobject 20. In FIG. 6A, the predetermined shape is a circle with radiusd. A center position of the vicinity region 40 is a center position ofthe object 20. In FIG. 6B, the predetermined shape is a rectangle havinga long side d1 and a short side d2. In addition, the center position ofthe vicinity region 40 is a position distant from the center position ofthe object 20 toward an upper direction by a predetermined distance e.

Note that, according to the position of the vicinity region 40 in theimage, the predetermined shape which defines the vicinity region 40 maybe changed. For example, a size of the predetermined shape is definedlarger in a place closer to the camera 10, and a size of the camera 10is defined smaller in a place farther from the camera 10. In anotherexample, the predetermined shape is defined such that a size of thevicinity region 40 in a real-space is constant. Here, the size of thevicinity region 40 in the real-space can be estimated using calibrationinformation of the camera 10. The calibration information of the camera10 includes information of various parameters (position and pose of thecamera, lens distortions, or the like) required to convert coordinateson the camera 10 into coordinates on the real-space. Well-knowntechniques can be used to generate calibration information.

<<Video Frame 14 to be Subject to Person Detection Process>>

The person detection unit 2040 executes the person detection process forat least two video frames 14 among the plurality of video frames 14including the target object. Hereinafter, the two video frames 14 willbe referred to as the first video frame and the second video frame. Thesecond video frame is a video frame 14 generated after the first videoframe is generated. Hereinafter, a method of defining the video frame 14to be regarded as the first video frame and the second video frame willbe described.

In a case where an object is left in a place by a person, the person ispresent in the vicinity of the object at least until the object isplaced in the place. On the other hand, after a while the object isleft, there is a high probability that the person is non-existent in thevicinity of the object. Therefore, in a case where the person who waspresent in the vicinity of the target object around a time-point whenthe target object is left or before the time-point becomes non-existentin the vicinity of the target object after a while since the targetobject is left, it can presumed that the target object is left.

Therefore, for example, a video frame 14 generated at the starttime-point of the above-described stationary determination period or thetime-point near that (the time-point before or after the predeterminedtime) may be adopted as the first video frame. For example, in theexample of FIG. 5, the start time-point of the stationary determinationperiod is the time-point t+a. Therefore, when handling the video frame14 generated at the start time-point of the stationary determinationperiod as the first video frame, the video frame 14-2 is the first videoframe.

In another example, the first video frame may be determined on the basisof the time-point at which the target object extracted at the endtime-point t+a+p of the stationary determination period is actually left(hereinafter, referred to as left time-point). This is because thetime-point from which the target object is determined to be stationary(the start time-point of the stationary determination period) does notnecessarily coincide with the time-point at which the target object isactually placed, in a case where the camera 10 images a place wherepeople come and go.

Therefore, the person detection unit 2040 estimates the left time-pointof the target object. For example, the person detection unit 2040extracts an image feature value of the target object from the videoframe 14 generated at the end time-point t+a+p of the stationarydetermination period, and then it is retroactively examined whether thatfeature value is detected at the same position in each video frame 14generated before the time-point t+a+p. Then, the person detection unit2040 estimates that the time-point at which the image feature value ofthe target object becomes undetected is, for example, an estimated lefttime-point. The first video frame determined on the basis of the lefttime-point is, for example, a video frame 14 generated at the lefttime-point or a video frame 14 generated before or after a predeterminedtime with respect to the left time-point.

In another example, the video frame 14 (the video frame 14 in which thetarget object appears) having the earliest generation time-point amongthe video frames 14 including the target object may be adopted as thefirst video frame. For example, in the example of FIG. 5, the videoframe 14 in which the target object appears is the video frame 14-1.

In another example, a video frame 14 generated before a predeterminedtime from a generation time-point of the second video frame may beadopted as the first video frame.

On the other hand, for example, the video frame 14 generated at or nearthe end time-point of the above described stationary determinationperiod (the time-point before or after the predetermined time) can beadopted as the second video frame. In the example of FIG. 5, the endtime-point of the stationary determination period is t+a+p. Therefore,assuming that the video frame 14 generated at the end time-point of thestationary determination period is the second video frame, the videoframe 14-3 is the second video frame. In another example, a video frame14 generated after the predetermined time from a generation time-pointof the first video frame may be adopted as the second video frame.

The person detection unit 2040 may cause other video frames 14 inaddition to the first video frame and the second video frame describedabove to be subject to the person detection process. For example, in acase where the person included in the first video frame is beingcrouched down, there is a possibility that the person cannot be detecteddue to the change of pose although the person is included in the firstvideo frame. Therefore, for example, the person detection unit 2040 alsocauses a plurality of video frames 14 which are generated within apredetermined time before and after the generation time-point of thefirst video frame to be subject to the person detection process.Similarly, the person detection unit 2040 also causes a plurality ofvideo frames 14 which are generated within a predetermined time beforeand after the generation time-point of the second video frame to besubject to the person detection process.

<Execution of Predetermined Process: S106>

The process execution unit 2060 executes the predetermined process bycomparing the result of the person detection process for each of theplurality of video frames 14 which includes the target object (S106).The predetermined process includes, for example, 1) process of warningin a case where a predetermined condition is satisfied, 2) process ofdetermining a state of the target object, and 3) process of tracking aperson who is presumed to have left the target object. Hereinafter,these processes will be described in detail.

<<Process of Warning>>

FIG. 7 is a diagram illustrating the flow of the process of warningperformed by the process execution unit 2060. In the example, theprocess execution unit 2060 compares the person detection result for thefirst video frame with the person detection result for the second videoframe.

First, the process execution unit 2060 determines whether a person isdetected by person detection process for the first video frame (S202).In a case where no person is detected, the process in FIG. 7 ends (nowarning is issued). The case where a person in the vicinity of thetarget object is not detected in the first video frame is, for example,a case where the target object suddenly appears within the imaging rangeof the camera 10 instead of moving from outside the imaging range of thecamera 10. For example, it is assumed that the target object is anobject (such as a signboard or a bronze statue) fixed and installed at aposition within the imaging range of the camera 10. In this case, in acase where the target object is hidden by another object (for example, amachine such as a car), the target object is not imaged by the camera10. However, when the object hiding the target object moves, the targetobject is imaged by the camera 10. That is, from the viewpoint of thecamera 10, the target object suddenly appears. In another example, thereis a case where a difference with the background image is generated dueto change of environmental light so that the target object is detectedas if the object suddenly appears in the video data 12. In the cases,there is a high probability that the object is not being left.Therefore, the process execution unit 2060 does not issue a warning.

In a case where a person is detected in the person detection process forthe first video frame (S202: YES), a feature value (the feature value ofa part of a person such as face or head, or the feature value of theperson's clothes or belongings) required for person matching isextracted from a region (person region) where the person is detected,and thereafter the process in FIG. 7 proceeds to S204. In S204, theprocess execution unit 2060 determines whether or not the same person asthe person detected by the person detection process for the first videoframe is detected by the person detection process for the second videoframe. In this case, feature values required for person matching areextracted from the person area if the person is detected from the firstvideo frame. Then, in a case where the similarity between the featurevalue extracted from the first video frame and the feature valueextracted from the second video frame is higher than a predeterminedthreshold, the process execution unit 2060 determines that the sameperson is detected from the video frames.

In a case where the same person is detected (S204: YES), the process inFIG. 7 ends (no warning is issued). In this case, the same person existsin the vicinity of the target object at the generation time-point of thefirst video frame and the generation time-point of the second videoframe. That is, in the above case, the person who places the targetobject keeps staying in the vicinity thereof, and there is a highprobability that the target object is not being left. Therefore, theprocess execution unit 2060 does not issue a warning.

On the other hand, in a case where the same person as a person detectedby the person detection process for the first video frame is notdetected by the person detection process for the second video frame(S204: NO), the process execution unit 2060 issues a warning (S206). Theabove case is a case where 1) the person is not detected by the persondetection process for the second video frame, or 2) the person detectedby the person detection process for the second video frame is differentfrom the person detected by the person detection process for the firstvideo frame. In any case, there is a high probability that the personwho places the target object does not exist in the vicinity of thetarget object, and the target object is left. Thus, the processexecution unit 2060 issues a warning.

Note that, it is considered that a plurality of persons are detectedfrom the first video frame and the second video frame. In this case, forexample, in a case where any one of the plurality of persons detectedfrom the first video frame is the same as any one of the plurality ofpersons detected from the second video frame, the process execution unit2060 determines that “the same person as the person detected by theperson detection process for the first video frame is detected by theperson detection process for the second video frame”. On the other hand,in a case where all the persons detected from the first video frame aredifferent from any one of the plurality of persons detected from thesecond video frame, the process execution unit 2060 determines that “thesame person as the person detected by the person detection process forthe first video frame is not detected by the person detection processfor the second video frame”.

In another example, the process execution unit 2060 determines the levelof the probability of the person (the leaver) who left the target objectfor the plurality of persons detected from the first video frame, anddetermines that the person is the same person using the determinedresult. For example, the process execution unit 2060 computes, for eachperson detected from the first video frame, the likelihood of the leaveraccording to the distance between the detection position and the targetobject. That is, as the distance between the detection position of theperson and the target object is small, the likelihood regarding thisperson is increased. At this time, the distance between the detectionposition of the person and the target object may be a distance on thevideo frame 14 or may be a distance in the real-space. The distance inthe real-space can be estimated using calibration information of thecamera 10. Then, for example, in a case where any one of the persons whohas a likelihood greater than or equal to the predetermined value amongthe persons detected from the first video frame is also detected fromthe second video frame, the process execution unit 2060 determines that“the same person as the person detected by the person detection processfor the first video frame is detected by the person detection processfor the second video frame”.

In the above-described example, although the person detection result forthe first video frame is compared with the person detection result forthe second video frame, the process execution unit 2060 does notnecessarily have to compare them. For example, instead of the result ofthe person detection process for the first video frame, the result ofthe person detection process for any video frame 14 generated within apredetermined time before or after the generation time-point of thefirst video frame may be used. For example, it is assumed that as aresult of performing the person detection process for the first videoframe and for each of the plurality of video frames 14 which generatedwithin a predetermined time before and after the generation time-pointof the first video frame, the same person is detected from any of theplurality of video frames 14. In this case, the process execution unit2060 uses the result of the person detection process in which the personis most clearly detected. The above is applied to the second video frameas well.

In addition, the process execution unit 2060 may also determine whetherto perform the process of warning by comparing three or more videoframes 14. For example, the person detection unit 2040 also performs theperson detection process on one or more video frames 14 generatedbetween the first video frame and the second video frame. Hereinafter,the video frame 14 generated between the first video frame and thesecond video frame is referred to as an intermediate frame. Then, theprocess execution unit 2060 determines whether to issue a warning on thebasis of the result of the person detection process for each of thefirst video frame, the second video frame, and one or more intermediatevideo frames. In this way, whether the person who places the targetobject keeps staying in the vicinity thereof is more accuratelydetermined.

For example, instead of the determination in S204 described above, theprocess execution unit 2060 determines whether the same person as aperson detected from the first video frame is detected from one or moreintermediate frames in addition to the second video frame. Then, forexample, the process execution unit 2060 issues a warning in a casewhere the same person as a person detected from the first video frame isnot detected in a video frame 14 between the second video frame and theintermediate frame. On the other hand, the process execution unit 2060does not issue a warning in a case where the same person as a persondetected from the first video frame is detected in the second videoframe and all the intermediate frames. Note that, the person detectedfrom the first video frame may not necessarily be detected from all theintermediate frames. For example, the process execution unit 2060 maynot issue a warning in a case where the same person as the persondetected from the first video frame is detected from the intermediateframe of a predetermined ratio or more.

In another example, the process execution unit 2060 firstly determineswhether a person detected from the first video frame and a persondetected from the second video frame are the same, and then only in acase where the determination is not sufficiently accurate, theintermediate frames may be used. For example, it is assumed that theprocess execution unit 2060 determines that the persons are identicalbased on the similarity between the feature value of the person detectedfrom the first video frame and the feature value of the person detectedfrom the second video frame. In this case, for example, the processexecution unit 2060 determines that 1) the detected person is the samein a case where a similarity is more than or equal to the firstpredetermined value, 2) the detected person is not the same in a casewhere a similarity is less than the second predetermined value (thevalue less than the first predetermined value), and 3) the determinationaccuracy is not sufficient in a case where a similarity is more than orequal to the second predetermined value and less than the firstpredetermined value. In the case of 3), the process execution unit 2060further determines whether the person detected from the first videoframe is detected from the intermediate frames.

Warning issued by the process execution unit 2060 is arbitrary. Forexample, the process execution unit 2060 outputs a warning sound oroutputs predetermined information to issue a warning. The predeterminedinformation is, for example, information on the target object(hereinafter, object information). For example, the object informationincludes an image of the target object, a time-point and period when thetarget object is imaged, an identifier (frame number) of the video frame14 including the target object, and an identifier of the camera 10imaging the target object.

In another example, the predetermined information to be output includesinformation on a person who is presumed to have left the target object(hereinafter, person information). A person who is presumed to have leftthe target object is a person who is detected from the vicinity of thetarget object in the first video frame and is not detected from thevicinity of the target object in the second video frame.

For example, the person information includes an image and feature valuesof the person who is presumed to have left the target object, atime-point when the person enters the imaging range of the camera 10(arrival time-point), and a time-point when the person goes out of theimaging range of the camera 10 (departure time-point). Here, the arrivaltime-point and the departure time-point can be estimated by, forexample, performing a tracking process of person using the plurality ofvideo frames 14 generated before and after the video frame 14 in whichthe person who is presumed to have left the target object is detected,and determining the time-point when the person moved from the placewhere the target object is placed. In another example, the arrivaltime-point or the departure time-point may be estimated based on thetime-point when the person disappears from the imaging range of thecamera 10. A well-known method can be used for the tracking process ofperson. Note that the movement speed of the person may be determined bythe tracking process, and the movement speed may be included in theperson. The moving speed of a person who is estimated to have left thetarget object can be used to, for example, predict the appearancetime-point of the person in other cameras in the vicinity describedlater.

In addition, in a case where the person who is presumed to have left thetarget object is included in other information regarding person, e.g.blacklist, the person information may include the information of theperson indicated in the “other information”.

An output destination of a warning is arbitrary. For example, the outputdestination of the warning is a speaker provided at a vicinity of asurveillance staff who monitors an image of the camera 10 in a securityguard room, or a terminal used by the surveillance staff. Here, in acase where the video frame 14 including the target object is displayedon the terminal, an image region of the target object or the person whois presumed to have left the target object may be highlighted. Forexample, the image region may be framed by a frame, or moreover, theframe may be blinked. In addition, information on a size of the targetobject may be additionally presented. The size of the object can beestimated by converting the image region of the object into a real-spaceusing calibration information of the camera. The information indicatingthe size of the target object is useful for determining the riskthereof, when the target object is a dangerous substance such as a bomb.In another example, the output destination of the warning is a terminalused by a security guard performing security at the site. Furthermore,for example, the output destination of the warning may be a terminalused in a predetermined organization such as a security company or thepolice.

<<Determination of State>>

The process execution unit 2060 determines a state of the target object.Specifically, the process execution unit 2060 determines whether thestate of the target object is “left” or “not left.

FIG. 8 is a flowchart illustrating a flow of process in which theprocess execution unit 2060 determines the state of the target object.Condition determination process in the flowchart is the same as thecondition determination process in the flowchart of FIG. 7. Merely, theprocess performed as a result of respective state determination processdiffers between FIG. 7 and FIG. 8.

Specifically, in the case where “there is a high probability that theobject is not being left” described in the flowchart of FIG. 7 (S202:NO, and S204: YES), the process execution unit 2060 determines a stateof the target object “not being left” (S302). On the other hand, in thecase where “there is a high probability that the object is being left”described in the flowchart of FIG. 7 (S204: NO), the process executionunit 2060 determines a state of the target object “being left” (S304).

For example, the process execution unit 2060 generates the abovedescribed object information regarding the target object determined as“being left”, and writes the object information into a storage device.This storage device is any storage device (for example, a storage device1080) which is accessible from the information processing apparatus2000. Note that, the process execution unit 2060 may further generatethe person information regarding the person who is presumed to have leftthe target object, and write the person information into the storagedevice.

In another example, the process execution unit 2060 may estimate a typeof the left object. This is because handling or the like for the case ofthe left object being detected could differ depending on what the leftobject is. For example, in a case where the left object is a cart forcarrying luggage or a notice board (for example, a board written withcaution) that is placed on the floor for calling attention, urgentmeasures or careful measures are not necessarily required since theirexistence does not cause any major problem. On the other hand, in a casewhere the left object is a dangerous substance such as a bomb, urgentmeasures or careful measures are required.

Furthermore, the process execution unit 2060 may change the type of thewarning according to a type of the object. In addition, the processexecution unit 2060 may change subsequent processes according to thetype of the object. For example, while the process execution unit 2060make the storage device store the information if the left object is anobject requiring urgent measures, the process execution unit 2060 doesnot make the storage device store the information if the left object isan object requiring no urgent measures.

The process execution unit 2060 may also generate object information onthe target object determined as being in a state of “not left” as well.However, in this case, the object information also includes a determinedstate of the object.

<<Tracking Process>>

As described above, in a case where the same person as the persondetected from the first video frame is not detected from the secondvideo frame, the probability that the target object is left is high.Therefore, it is preferable to track a person who is presumed to haveleft the target object. Here, the tracking includes, for example,recognizing a current position of the person, recognizing a place wherethe person is predicted to move in the future, and recognizing behaviorof the person until the target object is left.

Therefore, in a case where the same person as the person detected fromthe first video frame is not detected from the second video frame, theprocess execution unit 2060 detects a person who is presumed to haveleft the target object (a person detected from the first video data 12)from a video data 12 generated by a camera 10 different from the camera10 that generates the first video frame. As a premise, it is assumedthat a plurality of cameras 10 are provided in an environment where theinformation processing apparatus 2000 is used. For example, surveillancecameras are provided at a plurality of locations in a facility to bemonitored. Therefore, a plurality of surveillance cameras provided inthe plurality of locations are considered as cameras 10 respectively. Inaddition, hereinafter the “person who is presumed to have left thetarget object” is referred to as a person to be tracked.

The process execution unit 2060 acquires video data 12 from each of theplurality of cameras 10, and detects a person to be tracked from eachvideo data 12. Here, as a technique for detecting a specific person fromthe video data 12, a well-known technique can be used. For example, theprocess execution unit 2060 detects the person to be tracked from eachvideo data 12 by computing a feature value for the person to be trackeddetected from the first video frame, and detecting an image regionhaving the feature value from each video data 12.

The process execution unit 2060 may detect 1) only a video frame 14generated before the generation time-point of the first video frame inwhich the person to be tracked is detected, 2) only a video frame 14generated after the generation time-point of the first video frame, or3) both video frames 14 described above. In the case 1), it is possibleto recognize behavior (such as where the person came from) of the personto be tracked until the target object is left. On the other hand, in thecase 2), it is possible to recognize behavior (such as a currentposition or where to go) of the person to be tracked after the targetobject is left.

FIG. 9 is a diagram conceptually illustrating how the person to betracked is detected from a plurality of cameras 10. Cameras 10-1 to 10-7illustrated in FIG. 9 are part of surveillance cameras which areprovided in order to monitor a facility 50.

In FIG. 9, the object 20 being left by a person 30 is detected from thevideo data 12 generated by the camera 10-4. Here, it is assumed that theperson 30 who is the person to be tracked is detected from the firstvideo frame generated by the camera 10-1 at a time t.

The process execution unit 2060 further analyzes each of the video data12 generated by the camera 10-1 to the camera 10-3 and the camera 10-5to the camera 10-7 to detect the person 30. As a result, the person 30is detected in each of the video frame 14 generated by the camera 10-1at a time t-a-b, the video frame 14 generated by the camera 10-2 at atime t-a, the video frame 14 generated by the camera 10-5 at a time t+c,and the video frame 14 generated by the camera 10-7 at a time t+c+d (a,b, c and d are respectively positive values). On the other hand, theperson 30 is not detected from the video data 12 generated by the camera10-3 and the video data 12 generated by the camera 10-6. Based on theresult, the process execution unit 2060 estimates that a trajectory ofmovement of the person 30 is a trajectory 60. Information indicatinginformation of each camera 10 (such as the installation location) iswritten into any storage device accessible from the informationprocessing apparatus 2000.

For example, by using the trajectory 60, it is possible to estimate aplace where the person to be tracked has a high probability of passingamong places that cannot be imaged by the monitoring camera. Then, it ispossible to examine whether there is an abnormality (whether there isanother left object) in a place that cannot be monitored by thesurveillance camera, by having a security guard or the like examine theestimated location. According to this method, since it is possible topreferentially examine the place having a high probability that a persondoing suspicious behavior has passed, facilities to be monitored can beefficiently monitored.

Further, the future behavior of the person to be tracked can beestimated from the trajectory 60 and the structure of the facility 50.For example, in the example of FIG. 9, it can be estimated that theperson 30 moves toward an exit at an end of the trajectory 60 in a casewhere there are a plurality of entrances and exits in the facility 50.Thus, for example, it is possible to take measures such as closing thatexit.

Here, the process execution unit 2060 may acquire video data 12 from allthe cameras 10, or may acquire video data 12 from some of the cameras10. In the latter case, for example, the process execution unit 2060acquires video data 12 sequentially from a camera 10 closer to thecamera 10 that detects that the target object is left, and estimates thetrajectory of movement of the person to be tracked. Then, the processexecution unit 2060 acquires the video data 12 only from the cameras 10present on the estimated trajectory. In this way, in comparison with acase where the determination of the person to be tracked is performed byacquiring the video data 12 from all the cameras 10, there is anadvantage that 1) the processing load of the information processingapparatus 2000 can be reduced, and 2) the time required to detect theperson to be tracked can be shortened.

For example, in the case of FIG. 9, it is assumed that the processexecution unit 2060 performs a process of estimating where the person tobe tracked comes from before the object 20 being left. In this case, theprocess execution unit 2060 firstly determines that the person 30 hasmoved from the left direction in FIG. 9 on the basis of the movement ofthe person 30 in the video data 12 generated by the camera 10-4.Therefore, the process execution unit 2060 determines the camera 10-2installed in the left direction of the camera 10-4 as the camera 10 forthe video data 12 to be subsequently acquired. Similarly, the processexecution unit 2060 determines that the person 30 has moved from anupper direction in FIG. 9 on the basis of the movement of the person 30in the video data 12 generated by the camera 10-2. Therefore, theprocess execution unit 2060 determines the camera 10-1 installed in theupper direction of the camera 10-2 as the camera 10 for the video data12 to be subsequently acquired.

On the other hand, in the case of FIG. 9, it is assumed that the processexecution unit 2060 performs the process of estimating where the personto be tracked go to after the object 20 being left. In this case, theprocess execution unit 2060 firstly determines that the person 30 hasmoved toward the right direction in FIG. 9 on the basis of the movementof the person 30 in the video data 12 generated by the camera 10-4.Therefore, the process execution unit 2060 determines the camera 10-5installed in the right direction of the camera 10-4 as the camera 10 forthe video data 12 to be subsequently acquired. Similarly, the processexecution unit 2060 determines that the person 30 has moved to a lowerdirection in FIG. 9 on the basis of the movement of the person 30 in thevideo data 12 generated by the camera 10-5. Therefore, the processexecution unit 2060 determines the camera 10-7 installed in the lowerdirection of the camera 10-5 as the camera 10 for the video data 12 tobe subsequently acquired.

Further, the process execution unit 2060 may estimate a time slot inwhich the person to be tracked is imaged by each camera 10 using apositional relation between the cameras 10, and may detect the person tobe tracked using only the video frame 14 generated in the time slot. Inthis way, it is possible to further reduce the processing load of theinformation processing apparatus 2000 and the time required for theprocess of detecting the person 30.

For example, in the example of FIG. 9, first, the process execution unit2060 detects the person 30 who is presumed to have left the object 20 onthe basis of the video data 12 generated by the camera 10-4. In thiscase, as described above, the process execution unit 2060 estimates thatthe camera 10 for subsequently imaging the person 30 is the camera 10-5on the basis of the movement of the person 30 in the video data 12.Furthermore, the process execution unit 2060 determines a time-point(the time-point when the person 30 starts to move from an imaging rangeof the camera 10-4 to an imaging range of the camera 10-5) when theperson 30 is not included in the video data 12 generated by the camera10-4, and estimates a time slot in which the person 30 enters an imagingrange of the camera 10-5 on the basis of a determine time-point and apositional relation (a distance) between the camera 10-4 and the camera10-5. In this case, a moving velocity of the person may also beestimated, and the estimated moving velocity may be reflected in anestimation of the time slot which is within the imaging range. Then, theprocess execution unit 2060 performs the process of detecting the person30 on only the video frame 14 included in the estimated time slot amongthe video data 12 generated by the camera 10-5.

Hereinabove, although the embodiments of the present invention aredescribed with reference to the accompanying drawings, the embodimentsare examples of the present invention, and it is possible to use acombination of the above-described respective embodiments or variousconfigurations other than the embodiments.

1. An information processing apparatus comprising: a stationary objectdetection unit that detects a stationary object from video data; aperson detection unit that executes person detection process ofdetecting a person in vicinity of a target object for each of a firstvideo frame and a second video frame, the target object being an objectdetected as the stationary object, the first video frame including thetarget object, the second video frame including the target object andbeing generated after the first video frame; and a process executionunit that executes a predetermined process by comparing results of theperson detection process for each of the first video frame and thesecond video frame.
 2. The information processing apparatus according toclaim 1, wherein the predetermined process includes a process of issuinga warning in a case where the person detected from the first video frameis not detected from the second video frame.
 3. The informationprocessing apparatus according to claim 2, wherein the process executionunit does not issue the warning in a case where the person detected fromthe first video frame is detected from the second video frame.
 4. Theinformation processing apparatus according to claim 1, wherein thepredetermined process includes determining that the target object is ina state of being left in a case where the person detected from the firstvideo frame is not detected from the second video frame.
 5. Theinformation processing apparatus according to claim 4, wherein theprocess execution unit determines that the target object is in a stateof not being left in a case where the person detected from the firstvideo frame is detected from the second video frame.
 6. The informationprocessing apparatus according to claim 1, wherein the first video frameis a video frame in which the target object appears, or a video frame inwhich the target object is placed at a stationary position.
 7. Theinformation processing apparatus according to claim 1, wherein thestationary object detection unit detects the object as a stationaryobject in a case where the object detected from the video data isstationary for a predetermined period or more, and the second videoframe is a video frame generated at the end of the period.
 8. Theinformation processing apparatus according to claim 1, wherein thepredetermined process includes a process of acquiring video datagenerated by at least a second camera other than a first camera whichgenerates the video data and detecting the person detected from thefirst video frame from the acquired video data, in a case where a sameperson as the person who is detected from the first video frame is notdetected from the second video frame.
 9. The information processingapparatus according to claim 8, wherein the process execution unitperforms: computing a moving direction of the person detected from thefirst video frame; estimating a time when the person enters an imagingrange of the second camera on the basis of the computed movingdirection; and performing a detection of the person using a video framegenerated by the second camera for a period defined on the basis of theestimated time.
 10. A control method executed by a computer comprising:detecting a stationary object from video data; executing persondetection process of detecting a person in vicinity of a target objectfor each of a first video frame and a second video frame, the targetobject being an object detected as the stationary object, the firstvideo frame including the target object, the second video frameincluding the target object and being generated after the first videoframe; and executing a predetermined process by comparing results of theperson detection process for each of the first video frame and thesecond video frame.
 11. The control method according to claim 10,wherein the predetermined process includes a process of warning that isexecuted in a case where the person detected from the first video frameis not detected from the second video frame.
 12. The control methodaccording to claim 11, wherein the warning is not performed in a casewhere the person detected from the first video frame is detected fromthe second video frame.
 13. The control method according to claim 10,wherein the predetermined processing includes determining that thetarget object is in a state of being left in a case where the persondetected from the first video frame is not detected from the secondvideo frame.
 14. The control method according to claim 13, furthercomprising: determining that the target object is in a state of notbeing left in a case where the person detected from the first videoframe is detected from the second video frame.
 15. The control methodaccording to claim 10, wherein the first video frame is a video frame inwhich the target object appears, or a video frame in which the targetobject is placed at a stationary position.
 16. The control methodaccording to claim 10, further comprising: detecting the object as thestationary object in a case where the object is stationary for apredetermined time period or more, and the second video frame is a videoframe generated at the end of the period.
 17. The control methodaccording to claim 10, wherein the predetermined process includes aprocess of acquiring video data generated by at least a second cameraother than a first camera which generates the video data and detectingthe person detected from the first video frame from the acquired videodata, in a case where the same person as the person who is detected fromthe first video frame is not detected from the second video frame. 18.The control method according to claim 17, further comprising: computinga moving direction of the person detected from the first video frame,estimating a time when the person enters an imaging range of the secondcamera on the basis of the computed moving direction, and performing adetection of the person using a video frame generated by the secondcamera for a period defined on the basis of the estimated time.
 19. Anon-transitory computer-readable storage medium storing a programcausing a computer to execute each step of the control method accordingto claim 10.